home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: delta / whiteline CD Series - delta.iso / whitelin / share / stella / png_stm.txt < prev    next >
Text File  |  1995-11-25  |  9KB  |  250 lines

  1. Readme zum Modul "PNG for STELLA"
  2. ---------------------------------
  3.  
  4. (c) 1995 Alexander Lorenz
  5.  
  6.  
  7. Version 1.03 (09.10.1995)
  8. -------------------------
  9.  - Minimale Änderungen.
  10.  
  11.  
  12. Version 1.03 (05.10.1995)
  13. -------------------------
  14.  - Anpassungen an neue Dokumentverwaltung/Struktur von STELLA V2.4.
  15.  
  16.  
  17. Version 1.02 (20.09.1995)
  18. -------------------------
  19.  - Anpassungen an STELLA V2.3a.
  20.  
  21.  - Alle Speicheranforderungen und -freigaben werden nun via Stella-Funktionen 
  22.    getätigt.
  23.  
  24.  - Modul komplett eingedeutscht :-)
  25.  
  26.  - Bug gefixed, wodurch Interlaced-Bilder verstümmelt eingelesen wurden.
  27.  
  28.  - Bug gefixed, der Textinformationen mit Nullbytes erzeugt hat.
  29.  
  30.  - STELLA-Variablenname des Moduls geändert in "PNG_CONFIG".
  31.  
  32.  - Anpassungen an STELLA V2.2ß:
  33.    - Fehlercodes werden jetzt vom Modul gesetzt,
  34.    - Konfigurationsdialog herausgeführt,
  35.    - progress_bar-Abbruch wird als Fehlercode eingetragen.
  36.  
  37.  - Zeilenbuffergröße auf das zu speichernde Format angepasst.
  38.  
  39.  - Bug gefixed, der beim Kodieren über den Zeilenbuffer hinauslaß.
  40.  
  41.  - Das Schreiben von PNG-Files ist nun unter allen STELLA-Versionen möglich.
  42.  
  43.  - Das Modul hat nun einen Konfigurationsdialog, in dem einige Optionen gesetzt 
  44.    werden können. Die Einstellungen werden STELLA übergeben; sie können mit der 
  45.    STELLA-Konfiguration gesichert werden.
  46.  
  47.    Kompressionsrate: je schlechter desto schneller.
  48.    TC als Grauwert : Truecolor-Bilder werden als PNG-Graustufenbild gesichert.
  49.                      Paletten-Bilder können mittels den STELLA-Modulen in 
  50.                      Graustufen gewandelt werden. Das PNG-Modul erkennt diese 
  51.                      Bilder selbständig.
  52.    Interlaced      : Bilder werden in sieben Ebenen gespeichert. Näheres hierzu 
  53.                      siehe unten.
  54.    mit Textinfos   : die Textinformationen im Dialog "Dokument Information" 
  55.                      werden in das PNG-File geschieben.
  56.  
  57.  - Truecolor-Bilder können nun im PNG-Graustufenformat geschrieben werden.
  58.    Bei der Umrechnung von Farbe->Grauswert werden die Werte des Moduls 
  59.    "Graustufenberechnung" verwendet.
  60.  
  61.    Zusätzlich setzt bzw. beachtet das Modul das Grauflag (doc->grey) in der 
  62.    Dokumentstruktur; wenn es gesetzt ist, erzeugt das Modul ein PNG-File im 
  63.    Graustufenformat.
  64.  
  65.  - Texte aus doc->info_text werden nun in das PNG-File geschrieben.
  66.    Das Modul analysiert den Text auf folgende Schlüsselwörter, die für PNGs 
  67.    genormt sind:
  68.  
  69.    - "Title"      : kurzer Titel oder Überschrift des Bildes (eine Zeile)
  70.    - "Author"     : Name des Bild-Erzeugers
  71.    - "Copyright"  : Copyright Hinweis
  72.    - "Description": Beschreibung des Bildes
  73.    - "Software"   : Software die zur Erzeugung des Bildes verwendet wurde
  74.    - "Disclaimer" : Rechtlicher Hinweis
  75.    - "Warning"    : Warnung bzgl. des Bildinhaltes
  76.    - "Source"     : Verwendetes Gerät zur Erzeugung des Bildes
  77.    - "Comment"    : Beliebiger Kommentar
  78.  
  79.    Ein Schlüsselwort wird nur erkannt, wenn es allein in einer Zeile steht!
  80.  
  81.  - Code optimiert und überflüssige Routinen entfernt, wodurch das Modul etwas 
  82.    kleiner wurde.
  83.  
  84.  - Monochrome Bilder werden nun vom Modul selbst VDI/PNG-konform gewandelt.
  85.  
  86.  - Bug gefixed, der das erste Pixel bei ungerader Bildbreite verschwinden ließ.
  87.    (nochmals sorry, Tommi :-))
  88.  
  89.  - is_registered() wird nun korrekt aufgerufen (sorry, Tommi :-))
  90.    Unter öffentlichen STELLA-Versionen kann ein geladenes PNG-Bild nicht 
  91.    gespeichert werden.
  92.  
  93.  
  94. Version 1.00 (18.08.1995)
  95. -------------------------
  96.  - Bug in der Berechnung der korrekten Palettenwerte gefixed.
  97.  
  98.  - is_registered() wird nach dem Lesen aufgerufen, und doc->dont_save gesetzt, 
  99.    falls FALSE zurückgeliefert wird.
  100.  
  101.  - GAMMA-Korrektur-Infos werden weiterhin ignoriert.
  102.  
  103.  - Textinformationen in doc->info_text werden noch nicht geschrieben.
  104.  
  105.  - Interlaced-Bilder können nun auch geschrieben werden. Seltsamerweise 
  106.    verlieren die so gespeicherten Bilder erheblich an Qualität. Das Problem ist 
  107.    bisher leider noch nicht lokalisiert, weshalb von der Benutzung abgeraten 
  108.    wird! (Default: aus)
  109.  
  110.  - Interner Buffer für Kompression/Dekompression von 8 auf 32KB erhöht.
  111.    Bringt beim Lesen und Schreiben je nach Bild/Bildtyp ca. 5-15% mehr Speed. 
  112.    Des weiteren werden die erzeugen Files kleiner (weniger IDAT/IEND).
  113.  
  114.    Eine weitere Erhöhung auf 48, 64 und 128KB brachten nicht mehr Speed. Bei 
  115.    kleineren Bildern (~30K) wurde die Dekomprimierung sogar langsamer.
  116.  
  117.  - Truecolor-PNGs (auch mit Alpha-Channel) werden jetzt vom Modul beim Laden 
  118.    selbst in das Standardformat gewandelt, ohne 'set_line'-Aufrufe (sorry, 
  119.    Tommi :-)). Bringt ca. 5-10% mehr Speed.
  120.  
  121.  
  122. Version 0.99 (15.08.1995)
  123. -------------------------
  124.  - Kleine Anpassung an STELLA 2.2: progress_bar wird jetzt mit NULL-Pointer 
  125.    gefüttert.
  126.  
  127.  - Paletten- und Truecolor-Bilder können nun auch im PNG-Format geschrieben 
  128.    werden.
  129.  
  130.  - RGB-Daten werden beim Schreiben direkt aus der DOC-Struktur entnommen 
  131.    (bringt ca. 10% mehr Speed).
  132.  
  133.  - GAMMA-Korrektur-Infos werden weder beim Lesen noch beim Schreiben beachtet.
  134.  
  135.  - Textinformationen in der DOC-Struktur werden noch nicht in das PNG-File 
  136.    übernommen.
  137.  
  138.  
  139. Version 0.92 (12.08.1995)
  140. -------------------------
  141.  - Dekomprimierung generell etwas beschleunigt.
  142.  
  143.  - Modul um ca. 5K kleiner bekommen.
  144.  
  145.  - Zusätzliche 68020er-Version erstellt. Ist im allgemeinen ca. 10-15% 
  146.    schneller, bei einigen PNGs erstaunlicherweise etwa 10% langsamer...
  147.  
  148.  - Chunks 'bKGD' (background) und 'tRNS' (transparency) werden jetzt 
  149.    ausgewertet.
  150.  
  151.  - GAMMA-Korrekturen werden noch immer nicht berücksichtigt.
  152.  
  153.  - Bugfix: PNGs, die keine waren, wurden zwar erkannt, aber das Filehandle 
  154.    wurde nicht geschlossen.
  155.  
  156.  
  157. Version 0.91 (09.08.1995)
  158. -------------------------
  159.  - RGB-Daten werden jetzt für STELLA 2.1ß nach BGR gewandelt, und in den 
  160.    unteren 3 Bytes des 'long' von 'set_line' übergeben.
  161.  
  162.  - Alpha-Channel, Transparent-Infos und GAMMA-Korrekturen werden z.Zt. noch 
  163.    ignoriert.
  164.  
  165.  - tEXt-Chunks werden jetzt gesammelt unter 'info_text' der DOC-Struktur 
  166.    übergeben.
  167.  
  168.  - Monochrome Bitmaps (bit_depth = 1) werden unbehandelt an STELLA 
  169.    weitergegeben.
  170.  
  171.  - Ausgaben werden jetzt nur noch durch die STELLA-Funktion 'progress_bar' 
  172.    getätigt. 'printf' sollten keine durchgeführt werden :-)
  173.  
  174.  - Der Button 'Abbruch' in der Dialogbox von 'progress_bar' wird ausgewertet 
  175.    und ggf. die Funktion abgebrochen.
  176.  
  177.  
  178. Allgemeine Anmerkung
  179. --------------------
  180. Sollte jemand PNG-Bilder besitzen, die von diesem Modul nicht bzw. fehlerhaft 
  181. gelesen werden, so möchte er sich bitte mit mir in Verbindung setzen, damit 
  182. diese Probleme/Bugs beseitigt werden können. Vielen Dank.
  183.  
  184.  
  185. Anmerkungen zum PNG-Format
  186. --------------------------
  187.  - PNG ist das offizielle Nachfolgeformat für GIF. GIF verwendet ein 
  188.    Kompressionsverfahren, auf welches seit kurzem eine Lizenzgebühr fällig ist. 
  189.    Da dies für frei verteilbare Bilder und Public-Domain-Programme nicht 
  190.    sinnvoll ist, wurde Ende 1994/Anfang 1995 von CompuServe PNG ('Portable 
  191.    Network Graphics', ausgesprochen 'Ping') als Nachfolgeformat vereinbart und 
  192.    veröffentlicht.
  193.  
  194.    PNG bietet u.a. folgende Features:
  195.    - Truecolor-Bilder mit bis zu 48 Bits pro Pixel,
  196.    - Graustufen-Bilder mit bis zu 16 Bits pro Pixel,
  197.    - Textinformationen können beigefügt werden,
  198.    - Sehr robust wg. komplexen CRC-Prüfungen,
  199.    - Effektive, 100% verlustfreie Kompression.
  200.  
  201.  - Es ist möglich, das trotz besserer Kompressionsrate, die erzeugten Dateien   
  202.    größer sind, als bei schlechterer Kompressionsrate. Speziell bei Truecolor-  
  203.    Bildern kann dies passieren.
  204.  
  205.  - Für Truecolor-Bilder ist PNG auf den ersten Blick nicht das ideale Format. 
  206.    Allerdings ist mir kein anderes Format bekannt, das Truecolor-Bilder 
  207.    verlustfrei so kompakt speichern kann, wie PNG. JPEG erzeugt zwar, je nach 
  208.    Qualität, z.T. erheblich kleinere Dateien, allerdings komprimiert JPEG nicht 
  209.    verlustfrei (was für einige Anwendungen notwendig ist).
  210.  
  211.  - Interlaced-Bilder sind vor allem im Internet verbreitet (speziell im WWW). 
  212.    Sie haben den Vorteil, sieben kleine 'Ebenen' des Bildes zu enthalten, von 
  213.    denen eine Ebene nach der anderen übereinandergelegt wird. Erfahrene User 
  214.    können meist schon nach den ersten Ebenen entscheiden, ob sie den Aufbau des 
  215.    Bildes abwarten möchten oder nicht. Dadurch, das in der PNG-Datei mehrere 
  216.    'Ebenen' abgelegt werden, wird eine interlaced-Datei natürlich größer, als 
  217.    eine non-interlaced-Datei.
  218.  
  219.  
  220. Hinweis/Danksagungen
  221. --------------------
  222. 'PNG for STELLA' basiert auf der 'libpng reference library' von Guy Eric 
  223. Schalnat, Group 42, Inc., sowie der 'zlib general purpose compression library' 
  224. von Jean-loup Gailly und Mark Adler.
  225.  
  226. Ein großes Dankeschön geht an Thomas Künneth, ohne dessen Support (und STELLA) 
  227. dieses Modul nie Realität geworden wäre. THANKS!
  228.  
  229.  
  230. Modul-Status
  231. ------------
  232. Das Modul 'PNG for STELLA' ist Public Domain. Es darf allein oder im STELLA- 
  233. Paket frei in Mailboxen, auf Diskette oder CD-ROM verbreitet werden. Ein 
  234. Verkauf ist nicht gestattet. Der Autor behält sich alle Rechtlichen Schritte 
  235. vor!
  236.  
  237.  
  238. Autor
  239. -----
  240. E-Mail (bevorzugt):
  241.    MausNet: Alexander Lorenz @ N
  242.   Internet: Alexander_Lorenz@n.maus.de
  243.  
  244. Sackpost (kann dauern):
  245.    Alexander Lorenz
  246.    Diemantstein 127
  247.    86657 Bissingen
  248.  
  249.  
  250. [END]